home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 88 / 088.d81 / star masters (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  31KB  |  715 lines

  1. 5 dv=peek(186):ifdv<8thendv=8
  2. 10 poke53280,0:poke53281,0:poke53265,11:goto2500
  3. 20 rem --- mix arrows ---
  4. 30 a=rnd(1)*36:b=int(rnd(1)*2)
  5. 40 ifpeek(m(a))=n(b)thenb=-b+1
  6. 50 pokecx+m(a),c(b):pokem(a),n(b)
  7. 60 return
  8. 70 rem --- game screen ---
  9. 80 print"[147][158]         s t a r  m a s t e r s"
  10. 90 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][157][148][163]"
  11. 100 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][157][148][164]"
  12. 110 printtab(31)"[155]question"
  13. 120 printtab(32)"[152]number":gosub180
  14. 130 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][157][148][163]"
  15. 140 print"[164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][157][148][164]"
  16. 150 print" [159]your score : 00000  [154]high score : "h$""
  17. 160 return
  18. 170 rem --- print question number ---
  19. 180 poke214,14:print"":a$=str$(qn)
  20. 190 a$="0"+right$(a$,len(a$)-1)
  21. 200 printtab(34)right$(a$,2):return
  22. 210 rem --- print question ---
  23. 220 pokes+5,0:pokes+6,240:pokes+1,34:pokes,75:pokes+12,0
  24. 230 pokes+13,240:pokes+8,14:pokes+7,24
  25. 240 poke214,3:print:print" [150]";
  26. 250 a$=q$(an):fori=1tolen(a$)
  27. 260 ifmid$(a$,i,1)="+"thenprint:print" ";:goto290
  28. 270 print"[156][193][157][150]";:pokes+4,17:pokes+11,17:pokes+4,16:pokes+11,16
  29. 280 printmid$(a$,i,1);
  30. 290 next:return
  31. 300 rem --- print choices ---
  32. 310 poke214,7:print:fori=1to10
  33. 320 print" "i-1"[157][157][157][155][195][196] "mid$(c$,i,1)ch$(i)
  34. 330 next:return
  35. 340 rem --- response prompt ---
  36. 350 poke214,19:print
  37. 360 print" [158]your answer is:     [156]press [f7[156]] to quit"
  38. 370 return
  39. 380 rem --- bonus prompt ---
  40. 390 pokebd,4:poke214,19:print
  41. 400 print"   bonus if you answer next question!"
  42. 410 forde=1to3000:next
  43. 420 print"[145]"sp$:return
  44. 430 rem --- quit ---
  45. 440 poke214,19:print:poke198,0
  46. 450 print"  [153]are you sure you want to quit? [y[153]/n[153]] "
  47. 460 getke$:ifke$="n"thengosub350:goto1890
  48. 470 ifke$<>"y"then460
  49. 480 pokebd,0:goto2140
  50. 490 rem --- print score ---
  51. 500 poke214,22:print
  52. 510 a$=str$(sc):a$=right$(a$,len(a$)-1)
  53. 520 printtab(19-len(a$))""a$
  54. 530 return
  55. 540 rem --- clear screen lines ---
  56. 550 poke214,3:print
  57. 560 printsp$:printsp$""
  58. 570 fori=0to9:printleft$(sp$,30):next
  59. 580 print""sp$:return
  60. 590 rem -- highlight correct answer --
  61. 600 poke214,6+n%:printmid$(c$,n%,1)
  62. 610 printtab(4)"[167]"an$(an)"[146]_"
  63. 620 forde=1to3000:next:return
  64. 630 rem --- print bonus points ---
  65. 640 printtab(12)"[150]           "
  66. 650 printtab(12)"       "
  67. 660 printtab(12)"       "
  68. 670 printtab(12)"       "
  69. 680 printtab(12)"            ":return
  70. 690 printtab(14)"[150]         "
  71. 700 printtab(14)"    "
  72. 710 printtab(14)"      "
  73. 720 printtab(14)"    "
  74. 730 printtab(14)"       ":return
  75. 740 printtab(14)"[150]         "
  76. 750 printtab(14)"     "
  77. 760 printtab(14)"       "
  78. 770 printtab(14)"     "
  79. 780 printtab(14)"         ":return
  80. 790 printtab(14)"[150]         "
  81. 800 printtab(14)"    "
  82. 810 printtab(14)"       "
  83. 820 printtab(14)"    "
  84. 830 printtab(14)"         ":return
  85. 840 printtab(14)"[150]         "
  86. 850 printtab(14)"     "
  87. 860 printtab(14)"       "
  88. 870 printtab(14)"     "
  89. 880 printtab(14)"         ":return
  90. 890 rem --- clear sid chip ---
  91. 900 fori=stos+24:pokei,.:next:pokes+24,15:return
  92. 910 rem --- beep ---
  93. 920 pokes+1,50:pokes+6,240:pokes+4,17
  94. 930 forde=1to300:next:pokes+4,0:return
  95. 940 rem --- buzzer ---
  96. 950 pokes+6,210:pokes+5,5:pokes+4,33
  97. 960 fori=1to12:pokes+1,i:next
  98. 970 forde=1to250:next:pokes+4,0:return
  99. 980 rem --- correct sound ---
  100. 990 pokes+6,225:pokes+4,17
  101. 1000 fori=1to7:forde=1to180step20
  102. 1010 pokes+1,de:next:next
  103. 1020 pokes+4,0:return
  104. 1030 rem --- bonus 1000 ---
  105. 1040 pokes+6,240:pokes+4,17
  106. 1050 fori=1to14:forde=1to185step10
  107. 1060 pokes+1,de:next:pokebd,i:next
  108. 1070 pokes+4,0:return
  109. 1080 rem --- high score ---
  110. 1090 fori=1to3:a=9:forj=1to3
  111. 1100 pokes+5,62:pokes+6,48:pokes+24,15
  112. 1110 pokes+1,a:pokes,54
  113. 1120 pokes+4,33:forde=1to108:next
  114. 1130 pokes+4,32:a=a+3
  115. 1140 forde=1to10:next:next:next:return
  116. 1150 rem --- check drive ---
  117. 1160 open15,dv,15,"r0:"+f$+"="+f$:input#15,er:close15
  118. 1170 return
  119. 1180 rem --- save scores ---
  120. 1190 open15,dv,15,"s0:masters.high":close15
  121. 1200 open8,dv,8,"masters.high,p,w"
  122. 1210 fori=0to2:print#8,na$(i):print#8,sc(i):next
  123. 1220 close8:return
  124. 1230 rem --- a master ---
  125. 1240 printtab(x)mid$(c$,i+1,1)left$(m$,11)mid$(c$,i+1,1)right$(m$,156):return
  126. 1250 rem --- bonus drop ---
  127. 1260 print"[147]"
  128. 1270 fori=0to35:b=rnd(1)*2
  129. 1280 pokecx+m(i),c(b):pokem(i),n(b)
  130. 1290 next:poke214,16:print
  131. 1300 print"  [150][164][164][164] [156][164][164][164] [158][164][164][164] [164][164][164] [164][164][164] [164][164][164] [158][164][164][164] [156][164][164][164] [150][164][164][164]"
  132. 1310 print"  [150][165] [167] [156][165] [167] [158][165] [167] [165] [167] [165] [167] [165] [167] [158][165] [167] [156][165] [167] [150][165] [167]"
  133. 1320 print"  [150][207][183][208] [156][207][183][208] [158][207][183][208] [207][183][208] [207][183][208] [207][183][208] [158][207][183][208] [156][207][183][208] [150][207][183][208]"
  134. 1330 print"  [150][180]7[150][170] [156][180]5[156][170] [158][165]3[158][167] [165]2[167] [165]1[167] [165]2[167] [158][165]3[158][167] [156][165]5[156][167] [150][165]7[150][167]"
  135. 1340 print"  [150][165]5[150][170] [156][180]0[156][170] [158][165]5[158][167] [165]0[167] [165]0[167] [165]0[167] [158][165]5[158][167] [156][165]0[156][167] [150][165]5[150][167]"
  136. 1350 print"  [150][165]0[150][170] [156][180]0[156][167] [158][165]0[158][167] [165]0[167] [165]0[167] [165]0[167] [158][165]0[158][167] [156][165]0[156][167] [150][165]0[150][167]"
  137. 1360 print"  [150][204][175][186] [156][204][175][186] [158][204][175][186] [204][175][186] [165]0[167] [204][175][186] [158][204][175][186] [156][204][175][186] [150][204][175][186]"spc(21)"[204][175][186]"
  138. 1370 print" go for it!"
  139. 1380 printtab(28)"[156]press [f1[156]]"
  140. 1390 printtab(27)"to drop ball[158]"
  141. 1400 print" get that":print" big bonus!"
  142. 1410 l=50195:cl=55315:pokecl,1:pokel,81
  143. 1420 pokes+6,200:poke198,0
  144. 1430 gosub30:pokes+4,17:pokes+1,a+4
  145. 1440 gosub30:pokes+4,16
  146. 1450 getke$:ifke$<>"[133]"then1430
  147. 1460 x=32:y=0:m=40
  148. 1470 fori=18to1step-1:gosub30
  149. 1480 nl=l+m:nc=cl+m:pokel,x:pokecl,y
  150. 1490 x=peek(nl):y=peek(nc)
  151. 1500 pokenc,1:pokenl,81:l=nl:cl=nc
  152. 1510 ifx=n(0)thenm=39
  153. 1520 ifx=n(1)thenm=41
  154. 1530 pokes+1,i*10:pokes+4,17
  155. 1540 forde=1to100:next:next
  156. 1550 pokel,32:pokes+4,0
  157. 1560 ifl=50915thenpt=1000:gosub1040:x=1
  158. 1570 ifl=50899orl=50931thenpt=750:x=2
  159. 1580 ifl=50903orl=50927thenpt=500:x=3
  160. 1590 ifl=50907orl=50923thenpt=350:x=4
  161. 1600 ifl=50911orl=50919thenpt=200:x=5
  162. 1610 forde=1to1000:next
  163. 1620 gosub80:poke214,8:print
  164. 1630 printtab(17)"[153]bonus"
  165. 1640 onxgosub640,690,740,790,840
  166. 1650 gosub500:forde=1to2000:next
  167. 1660 fori=10toptstep10
  168. 1670 sc=sc+10:gosub500
  169. 1680 pokes+4,33:pokes+1,i/10:pokebd,i/4
  170. 1690 forde=1to10:next:pokes+4,32:next
  171. 1700 gosub990:return
  172. 1710 rem --- random question ---
  173. 1720 r%=rnd(1)*250+1:fl=0:fori=1toqn
  174. 1730 ifr%=uq(i)thenfl=1:i=qn
  175. 1740 next:ifflthen1720
  176. 1750 uq(qn)=r%:an=r%:pt=100
  177. 1760 ifbn=4thengosub920:gosub390
  178. 1770 rem --- random choices ---
  179. 1780 fori=1to10:ch$(i)="":next
  180. 1790 n%=(rnd(1)*10+1):ch$(n%)=an$(an)
  181. 1800 fori=1to10:ifch$(i)<>""then1850
  182. 1810 r%=rnd(1)*250+1:ifan$(r%)=an$(an)then1810
  183. 1820 fl=0:forj=1toi:ifch$(j)=an$(r%)thenfl=1
  184. 1830 next:ifflthen1810
  185. 1840 ch$(i)=an$(r%)
  186. 1850 next
  187. 1860 gosub180:gosub220:gosub310
  188. 1870 gosub350:poke198,0
  189. 1880 rem --- get guess ---
  190. 1890 getke$:ifke$<"0"orke$>"9"andke$<>"[136]"then1890
  191. 1900 ifke$="[136]"then440
  192. 1910 qu=val(ke$)+1
  193. 1915 poke214,19:print:pr